package com.sbs.order.domain.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

/**
 * <p>
 * 订单表
 * </p>
 *
 * @author sunbaoshun
 * @since 2025-08-08
 */
@Getter
@Setter
  @Accessors(chain = true)
  @TableName("order_base")
public class OrderBase implements Serializable {

    private static final long serialVersionUID = 1L;

      /**
     * 订单ID（主键）
     */
        @TableId(value = "order_id", type = IdType.AUTO)
      private Long orderId;

      /**
     * 供应商ID（关联供应商表）
     */
      private Long supplierId;

      /**
     * 订单创建时间
     */
      private LocalDateTime createAt;

      /**
     * 订单编号（业务唯一标识）
     */
      private String orderNo;

      /**
     * 订单总金额
     */
      private BigDecimal totalAmount;

      /**
     * 订单状态：0-待付款，1-已付款，2-已发货，3-已完成，4-已取消
     */
      private Byte status;

      /**
     * 付款时间
     */
      private LocalDateTime paymentTime;

      /**
     * 发货时间
     */
      private LocalDateTime deliveryTime;

      /**
     * 完成时间
     */
      private LocalDateTime completeTime;

      /**
     * 取消时间
     */
      private LocalDateTime cancelTime;

      /**
     * 订单备注
     */
      private String remark;

      /**
     * 创建人
     */
      private String createdBy;

      /**
     * 最后更新时间
     */
      private LocalDateTime updatedAt;
}
